$(function () {
    var car_datagrid = $("#car_datagrid");
    var car_dialog = $("#car_dialog");
    
    car_datagrid.datagrid({
        url:"/carInfo/list",
        fit:true,
        columns:[[
            {field:'x',checkbox:true},
            {field:'id',title:'id',width:100,hidden:true}, //hidden 隐藏显示该列
            {field:'username',title:'车主名称',width:100},//允许列改变大小
            {field:'carname',title:'车辆品牌',width:100},
            {field:'cartype',title:'车辆型号',width:100},
            {field:'carnum',title:'车牌号码',width:100},
            {field:'displacement',title:'排气量/L',width:100},
            {field:'marketval',title:'市场估计/万',width:100},
            {field:'sort',title:'用途分类',width:100,formatter: function(value,row,index){
                if (value == 1){
                    return "<font color='green'>载人</font>";
                } else if(value == 0) {
                    return "<font color='red'>载物</font>";
                }
            }},
            {field:'carsize',title:'车载大小',width:100,formatter: function(value,row,index) {
                if (value) {
                    return value.name;
                }
            }},
            {field:'info',title:'备注信息',width:100}

            
        ]],
        rownumbers:true,
        striped:true,
        toolbar:"#car_toolbar",
        pagination:true,
        fitColumns:true,
        singleSelect:true,

    })
    //弄出一个用于输入员工信息的对话框
    //因为对话框在编辑与添加是公用同一个, 所以页面加载完毕时候提前初始化, 在点击添加与编辑时候,直接显示出来即可
    car_dialog.dialog({
        width:400,
        height:400,
        buttons:"#bb",
        closed:"true"
    })
    
    var cmdObj = {
        //刷新列表数据
        reload: function () {
                car_datagrid.datagrid("reload");
        },
        //编辑操作
        edit: function () {
        //因为编辑与添加公用一个对话框,所以在操作之前应该将以前的数据清空
        $("#car_form").form("clear");
        //从datagrid中获取选中的那一行数据
        var row = car_datagrid.datagrid("getSelected");
        if(!row){
            $.messager.alert("温馨提示","请选择要编辑的行");
        }else{
            //打开编辑对话框
            car_dialog.dialog("setTitle","编辑车辆信息");
            car_dialog.dialog("open");
            //将选中row数据加载到对话框中的form表单中,用于回显
            //form加载数据原理: 根据同名匹配原则
             if(row.carsize){
                 row["carsize.name"] = row.carsize.name;
            }
            //将数据加载到form表单中
            $("#car_form").form("load",row);//数据回显
        }
    },

        //添加操作
        add: function(){
        //因为编辑与添加公用一个对话框,所以在操作之前应该将以前的数据清空
        $("#car_form").form("clear");
        //打开添加对话框
        car_dialog.dialog("setTitle","添加机构");
        car_dialog.dialog("open");
    },
        //保存员工
        save: function() {
        //获取id
        var id = $("#carId").val();
        //因为编辑与添加公用对话框中同一个保存按钮,所以需要根据id来判断添加还是编辑操作
        var url="/carInfo/save";
        if(id){
            url="/carInfo/update";
        }
        //提交表单
        $("#car_form").form("submit",{
            //表单提交路径
            url:url,
            //操作成功之后执行该函数, data是返回的数据
            //注意:data是json格式的字符串
            success: function(data){
                //1.接受返回数据
                //2.判断操作是否成功
                data = $.parseJSON(data);
                //3.操作失败,提示用户
                if (!data.succeed){
                    $.messager.alert('温馨提示',data.errorMsg);
                }else{
                    //4.操作成功
                    //4.1提示用户操作成功
                    $.messager.alert('温馨提示',"保存成功");
                    //4.2关闭当前的输入对话框
                    car_dialog.dialog("close");
                    //4.3属性datagrid的数据, 重新刷新页面的数据
                    car_datagrid.datagrid("reload");
                }
            }

        })
    },

        //关闭对话框
        cancel:function() {
        car_dialog.dialog("close");
    },
        //高级查询
        query:function() {
        //因为easyui对元素的html进行相关封装,可能导致获取到数据,建议使用easyui提供获取数据的方法
        //var keyword = $("#keyword").val();
        var keyword = $("#keyword").textbox("getValue");

        //所谓高级查询, 无非是让datagrid根据条件去更新列表数据,所以只需要刷新列表, 同时携带查询条件即可
        car_datagrid.datagrid("load",{
            keyword:keyword,
        })
    }
    }

    //调用
    $("a[data-cmd]").click(function () {
        var cmd = $(this).data("cmd");
        cmdObj[cmd]();
    })
})











